package org.hgf.testrabbitmq.consumer.service;

import java.util.List;

/**
 * 队列服务
 *
 * @author 何国发
 * @version 1.0.0
 * @date 2022/9/7 17:31
 */
public interface IQueueService {

    /**
     * 获取mq中所有队列的名称
     *
     * @return java.util.List<java.lang.String>
     * @author 何国发
     * @date 2022/9/7 17:35
     */
    List<String> queueNameList();

    /**
     * 根据队列名称删除队列（队列没有使用及没有参数就删除）
     *
     * @param queueName 队列名称
     * @return java.lang.Boolean
     * @author 何国发
     * @date 2022/9/8 9:24
     */
    Boolean deleteQueue(String queueName);

    /**
     * 根据队列名称删除队列（强制删除）
     *
     * @param queueName         要删除的队列名称
     * @param forceDeleteFlag   是否强制删除标识，true：强制删除  false：不强制删除
     * @return java.lang.Boolean
     * @author 何国发
     * @date 2022/9/8 9:36
     */
    Boolean deleteQueue(String queueName, Boolean forceDeleteFlag);

}
